class Solution:
def trap(self, height: List[int]) -> int:
maxl = []
maxr = []
if(len(height) == 0):
return 0
maxl.append(height[-1])
maxr.append(height[0])
for i in range(1, len(height), 1):
maxr.append(max(height[i], maxr[-1]))
for i in range(len(height) - 2, -1, -1):
maxl.append(max(height[i], maxl[-1]))
count = 0
maxl.reverse()
for i in range(len(height)):
count+= min(maxr[i], maxl[i]) - height[i]
return count
1178D - Prime Graph | 1711D - Rain |
534A - Exam | 1472A - Cards for Friends |
315A - Sereja and Bottles | 1697C - awoo's Favorite Problem |
165A - Supercentral Point | 1493A - Anti-knapsack |
1493B - Planet Lapituletti | 747B - Mammoth's Genome Decoding |
1591C - Minimize Distance | 1182B - Plus from Picture |
1674B - Dictionary | 1426C - Increase and Copy |
520C - DNA Alignment | 767A - Snacktower |
1365A - Matrix Game | 714B - Filya and Homework |
31A - Worms Evolution | 1691A - Beat The Odds |
433B - Kuriyama Mirai's Stones | 892A - Greed |
32A - Reconnaissance | 1236D - Alice and the Doll |
1207B - Square Filling | 1676D - X-Sum |
1679A - AvtoBus | 1549A - Gregor and Cryptography |
918C - The Monster | 4B - Before an Exam |